﻿// <copyright file="IUPnPService.cs" company="Effu Efface">
//      Copyright (c) Effu Efface Consulting.  All rights reserved.
// </copyright>
// <author>Ryan R. Sites</author>

namespace TVersiPlay.Common.Interfaces
{
    using System.Collections.Generic;
    using OpenSource.UPnP;
    using TVersiPlay.DTO;
    using TVersiPlay.Common.Enumerations;
    using System;

    public interface IUPnPControlPointService
    {
        #region properties   

        #endregion //properties

        #region methods

        void Start();

        bool TVersityServerAvailable();

        List<UPnPServer> GetAvailableServers();

        void SetCurrentTVersityServer(UPnPDevice deviceToSet);

        void BrowseMediaServer(BrowseType typeOfBrowse, ContentDirectory.Enum_A_ARG_TYPE_BrowseFlag browseFlag, Action<DTO.BrowseResults> callBack);

        void BrowseMediaServer(BrowseType typeOfBrowse, string containerId, ContentDirectory.Enum_A_ARG_TYPE_BrowseFlag browseFlag, Action<DTO.BrowseResults> callBack);

        #endregion //methods

        #region events
        #endregion //events
    }
}
